home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1996 #14
/
Monster Media No. 14 (April 1996) (Monster Media, Inc.).ISO
/
prog_d
/
isamexpt.zip
/
ISAMEXPT.PAS
< prev
next >
Wrap
Pascal/Delphi Source File
|
1996-01-13
|
27KB
|
867 lines
unit Isamexpt;
interface
uses
SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, Buttons, ExtCtrls, Menus, ToolIntf,
ExptIntf;
type
TIsamMainForm = class(TForm)
StatusLine: TPanel;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
Sample: TPaintBox;
Notebook1: TNotebook;
GroupBox1: TGroupBox;
CancelBttn: TBitBtn;
Rueckbttn: TBitBtn;
VorBttn: TBitBtn;
GroupBox2: TGroupBox;
EdiHauptCheck: TCheckBox;
GroupBox4: TGroupBox;
BrwHauptCheck: TCheckBox;
FileopenBttn: TSpeedButton;
GroupBox5: TGroupBox;
Label7: TLabel;
Label4: TLabel;
Edit1: TEdit;
Label3: TLabel;
SpeedButton1: TSpeedButton;
Label6: TLabel;
Edit3: TEdit;
SpeedButton3: TSpeedButton;
BrwCheck: TCheckBox;
EdiCheck: TCheckBox;
Label9: TLabel;
DirInput: TEdit;
SpeedButton4: TSpeedButton;
Label10: TLabel;
Label11: TLabel;
IniDatNamInput: TEdit;
IniBrwNamInput: TEdit;
GroupBox6: TGroupBox;
LabelNebenRadio: TRadioButton;
LabelueberRadio: TRadioButton;
GroupBox7: TGroupBox;
LenFestRadio: TRadioButton;
LenVarRadio: TRadioButton;
EdiFontLabel: TLabel;
EdiInputFontLabel: TLabel;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
FontDialog1: TFontDialog;
SpeedButton7: TSpeedButton;
LboxFontLabel: TLabel;
Memo1: TMemo;
GroupBox9: TGroupBox;
Memo2: TMemo;
GroupBox10: TGroupBox;
Memo3: TMemo;
Label2: TLabel;
TableNameInput: TEdit;
HelpBttn: TBitBtn;
SprachBttn: TBitBtn;
DateiBttn: TSpeedButton;
OpenDialog2: TOpenDialog;
EditorFormNameInput: TEdit;
BrwFormNameInput: TEdit;
Label1: TLabel;
DBaseExpCheck: TCheckBox;
DBaseImpCheck: TCheckBox;
DBStruEdit: TEdit;
Label5: TLabel;
DBStruBttn: TSpeedButton;
procedure FormCreate(Sender: TObject);
procedure ShowHint(Sender: TObject);
procedure FileopenBttnClick(Sender: TObject);
procedure EndeBttnClick(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure SamplePaint(Sender: TObject);
procedure EdiCheckClick(Sender: TObject);
procedure CancelBttnClick(Sender: TObject);
procedure RueckbttnClick(Sender: TObject);
procedure VorBttnClick(Sender: TObject);
procedure EdiHauptCheckClick(Sender: TObject);
procedure BrwHauptCheckClick(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure Memo1Exit(Sender: TObject);
procedure HelpBttnClick(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormShow(Sender: TObject);
procedure SprachBttnClick(Sender: TObject);
procedure DateiBttnClick(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure Edit3Exit(Sender: TObject);
procedure EditorFormNameInputExit(Sender: TObject);
procedure BrwFormNameInputExit(Sender: TObject);
procedure TableNameInputExit(Sender: TObject);
procedure DirInputExit(Sender: TObject);
procedure DBaseExpCheckClick(Sender: TObject);
procedure DBaseImpCheckClick(Sender: TObject);
procedure DBStruEditExit(Sender: TObject);
procedure DBStruBttnClick(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
Private
DrawBitmap: TBitmap;
RecList,KeyList,IIDList: TStringList;
Sprache: Integer;
Procedure CheckButtons;
function DoFormCreation(const FormIdent: string): TForm;
function CreateEditorSource(const UnitIdent, FormIdent: string): TMemoryStream;
function CreateEditorForm(const FormIdent: string): TMemoryStream;
function DoBrwFormCreation(const FormIdent: string): TForm;
function CreateBrowserForm(const FormIdent: string): TMemoryStream;
function CreateBrowserSource(const UnitIdent, FormIdent,
EdiUnitIdent, EdiFormIdent: string): TMemoryStream;
function CreateStru(Const FormIdent: String): TMemoryStream;
Procedure Update_Listen(i: Integer);
Procedure Setze_Sprache(S: Integer);
end;
TIsamDialogExpert = class(TIExpert)
public { Methods required by Delphi to define the expert }
function GetName: string; override;
function GetComment: string; override;
function GetGlyph: HBITMAP; override;
function GetStyle: TExpertStyle; override;
function GetState: TExpertState; override;
function GetIDString: string; override;
procedure Execute; override;
public
private
end;
procedure Register;
implementation
Uses Proxies, IStreams, DirAusw, UToolDll,
WntIsam1, WntIsam2, WntIsam3, WntIsam4,
VirtIntf, Inifiles;
{$R *.DFM}
{$R EXPTISAM.RES}
procedure Register;
begin
RegisterLibraryExpert(TIsamDialogExpert.Create);
end;
procedure HandleException;
begin
ToolServices.RaiseException(ReleaseException);
end;
procedure WntvIsamDialogExpert(ToolServices: TIToolServices);
var
D: TIsamMainForm;
ISourceStream, IFormStream, IStruStream: TIMemoryStream;
UnitIdent, FormIdent, BrwIdent: string[79];
BrwUnitIdent, BrwFileName, StruIdent: String;
UZahl,Code: Integer;
StruFileName,UStr, Dir: String;
FileName: TFileName;
IniFile : TIniFile;
begin
if ToolServices = nil then Exit;
if ToolServices.GetNewModuleName(UnitIdent, FileName) then
begin
D := TIsamMainForm.Create(Application);
try
D.Edit1.Text:= '';
D.Edit3.Text:= '';
Inifile:= TIniFile.Create('ISAMEXPT.INI');
Dir:= IniFile.ReadString('EXPERT','PATH','');
D.Sprache:= IniFile.ReadInteger('EXPERT','LANGUAGE',0);
IniFile.Free;
D.DirInput.Text:= Dir;
if D.ShowModal = mrOK then begin
Dir:= D.DirInput.Text;
Inifile:= TIniFile.Create('ISAMEXPT.INI');
IniFile.WriteString('EXPERT','PATH',Dir);
IniFile.WriteInteger('EXPERT','LANGUAGE',D.Sprache);
IniFile.Free;
UnitIdent:= D.Edit1.Text;
if Pos('.',UnitIdent) > 0 then UnitIdent:= Copy(UnitIdent,1,Pos('.',UnitIdent)-1);
FormIdent:= D.EditorFormNameInput.Text;
if Pos('.',FormIdent) > 0 then FormIdent:= Copy(FormIdent,1,Pos('.',FormIdent)-1);
BrwUnitIdent:= D.Edit3.Text;
BrwIdent := D.BrwFormNameInput.Text;
FileName:= Dir + UnitIdent + '.PAS';
BrwFileName:= Dir + BrwUnitIdent + '.PAS';
if D.BrwCheck.Checked then begin
IFormStream := TIMemoryStream.Create(D.CreateBrowserForm(BrwIdent));
try
ISourceStream := TIMemoryStream.Create(D.CreateBrowserSource(BrwUnitIdent, BrwIdent,
UnitIdent, FormIdent));
try
ToolServices.CreateModule(BrwFileName, ISourceStream, IFormStream,
[cmAddToProject, cmShowSource, cmShowForm, cmUnNamed,
cmMarkModified]);
finally
ISourceStream.OwnStream := True;
ISourceStream.Free;
end;
finally
IFormStream.OwnStream := True;
IFormStream.Free;
end;
end;
if D.EdiCheck.Checked then begin
IFormStream := TIMemoryStream.Create(D.CreateEditorForm(FormIdent));
try
ISourceStream := TIMemoryStream.Create(D.CreateEditorSource(UnitIdent, FormIdent));
try
ToolServices.CreateModule(FileName, ISourceStream, IFormStream,
[cmAddToProject, cmShowSource, cmShowForm, cmUnNamed,
cmMarkModified]);
finally
ISourceStream.OwnStream := True;
ISourceStream.Free;
end;
finally
IFormStream.OwnStream := True;
IFormStream.Free;
end;
end;
if (D.DBaseExpCheck.Checked) or (D.DbaseImpCheck.Checked) then begin
StruIdent:= D.DBStruEdit.Text;
if Pos('.',StruIdent) > 0 then StruIdent:= Copy(StruIdent,1,Pos('.',StruIdent)-1);
StruFileName:= Dir + StruIdent + '.PAS';
IStruStream := TIMemoryStream.Create(D.CreateStru(StruIdent));
try
ToolServices.CreateModule(StruFileName, IStruStream, NIL,
[cmAddToProject, cmShowSource, cmUnNamed, cmMarkModified]);
finally
IStruStream.OwnStream := True;
IStruStream.Free;
end;
end;
end;
finally
D.Free;
end;
end;
end;
{ tIsamDialogExpert }
function tIsamDialogExpert.GetName: string;
begin
try
Result := 'ISAM_Expert';
except
HandleException;
end;
end;
function tIsamDialogExpert.GetComment: string;
begin
try
Result := 'ISAM-Dialogexperte';
except
HandleException;
end;
end;
function tIsamDialogExpert.GetGlyph: HBITMAP;
begin
try
Result := LoadBitmap(HInstance, 'IS_EXPT');
except
HandleException;
end;
end;
function tIsamDialogExpert.GetStyle: TExpertStyle;
begin
try
Result := esForm;
except
HandleException;
end;
end;
function tIsamDialogExpert.GetState: TExpertState;
begin
try
Result := [esEnabled];
except
HandleException;
end;
end;
function tIsamDialogExpert.GetIDString: string;
begin
try
Result := 'ISAM_Expert';
except
HandleException;
end;
end;
procedure tIsamDialogExpert.Execute;
begin
try
WntvIsamDialogExpert(ToolServices);
except
HandleException;
end;
end;
procedure TIsamMainForm.FormCreate(Sender: TObject);
begin
DrawBitmap := TBitmap.Create;
Application.OnHint := ShowHint;
CheckButtons;
RecList:= TStringList.Create;
KeyList:= TStringList.Create;
IIDList:= TStringList.Create;
Sprache:= 0;
end;
procedure TIsamMainForm.ShowHint(Sender: TObject);
begin
StatusLine.Caption := Application.Hint;
end;
Procedure TIsamMainForm.CheckButtons;
var i: Integer;
begin
i:= Notebook1.PageIndex;
RueckBttn.Enabled:= I > 0;
if I = 0 then VorBttn.Enabled:= (Memo1.Lines.Count > 0)
else if I = 1 then VorBttn.Enabled:= (Memo2.Lines.Count > 0) and (Memo3.Lines.Count > 0)
else if I = 4 then VorBttn.Enabled:= (DBStruEdit.Text <> '')
or ((DBaseExpCheck.Checked = False) and (DBaseImpCheck.Checked = False))
else
VorBttn.Enabled:= (DirInput.Text <> '') and
(((EdiCheck.Checked) and (Edit1.Text <> '') and (EditorFormNameInput.Text <> '')) or (EdiCheck.Checked = False)) and
(((BrwCheck.Checked) and (Edit3.Text <> '') and (BrwFormNameInput.Text <> '')) or (BrwCheck.Checked = False)) and
((BrwCheck.Checked) or (EdiCheck.Checked));
if VorBttn.Enabled then begin
if I = 4 then VorBttn.Caption:= '&Create'
else begin
if Sprache = 1 then Vorbttn.Caption:= '&Forward'
else VorBttn.Caption:= '&Weiter';
end;
end;
end;
procedure TIsamMainForm.FileopenBttnClick(Sender: TObject);
var DatNam: String;
TypDatei: TextFile;
RecEinlesen,KeyEinlesen: Boolean;
TypText,TText : String;
begin
if OpenDialog1.Execute then begin
DatNam:= OpenDialog1.FileName;
Memo1.Lines.Clear;
KeyList.Clear;
IIDList.Clear;
AssignFile(TypDatei,DatNam);
Reset(TypDatei);
RecEinlesen:= False;
KeyEinlesen:= False;
Repeat
ReadLn(TypDatei,TypText);
TText:= UpperCase(TypText);
Strip(TText);
if (Pos('TYPE',TText) > 0) or (Pos('=RECORD',TText) > 0) then RecEinlesen:= True;
if (Pos('KEYBEGIN',TText) > 0) then KeyEinlesen:= True;
if RecEinlesen then Memo1.Lines.Add(TypText);
if KeyEinlesen then KeyList.Add(TypText);
if Pos('END;',TText) > 0 then RecEinlesen:= False;
if Pos('KEYEND',TText) > 0 then KeyEinlesen:= False;
Until (Eof(TypDatei));
CloseFile(TypDatei);
If Memo1.Lines.Count < 1 then begin
if Sprache = 1 then ErrorWindow('TYP-File has not the expected format','')
else Errorwindow('Typ-Datei hat das falsche Format','');
end;
end;
CheckButtons;
end;
procedure TIsamMainForm.EndeBttnClick(Sender: TObject);
begin
Close;
end;
procedure TIsamMainForm.FormDestroy(Sender: TObject);
begin
RecList.Free;
IIDList.Free;
KeyList.Free;
DrawBitmap.Free;
end;
procedure TIsamMainForm.SamplePaint(Sender: TObject);
var X, Y: Integer;
begin
DrawBitmap.Handle := LoadBitmap(HInstance, 'DIALOG');
Sample.Canvas.Draw(0, 0, DrawBitmap);
end;
function TIsamMainForm.DoFormCreation(const FormIdent: string): TForm;
begin
DoFormCreation:= Erzeuge_EditorForm(FormIdent,RecList,
LabelNebenRadio.Checked,
LenFestRadio.Checked,
EdiFontLabel.Font,
EdiInputFontLabel.Font,
Sprache);
end;
function TIsamMainForm.CreateEditorSource(const UnitIdent, FormIdent: string): TMemoryStream;
begin
CreateEditorSource:= Erzeuge_EditorSource(UnitIdent, FormIdent,
RecList, KeyList,
Sprache);
end;
function TIsamMainForm.CreateEditorForm(const FormIdent: string): TMemoryStream;
var DlgForm: TForm;
begin
Result := nil;
DlgForm := DoFormCreation(FormIdent);
try
Result := TMemoryStream.Create;
Result.WriteComponentRes(FormIdent, DlgForm);
Result.Position := 0;
finally
DlgForm.Free;
end;
end;
function TIsamMainForm.DoBrwFormCreation(const FormIdent: string): TForm;
var TblNam: String;
begin
TblNam:= TableNameInput.Text;
if Pos('.',TblNam) > 0 then TblNam:= Copy(TblNam,1,Pos('.',TblNam)-1);
DoBrwFormCreation:= Erzeuge_BrowserForm(FormIdent,
TblNam,
IniDatNamInput.Text,
IniBrwNamInput.Text,
LboxFontLabel.Font,
IIDList,KeyList,RecList,
DbaseExpCheck.Checked,
DBaseImpCheck.Checked,
Sprache);
end;
function TIsamMainForm.CreateBrowserForm(const FormIdent: string): TMemoryStream;
var DlgForm: TForm;
begin
Result := nil;
DlgForm := DoBrwFormCreation(FormIdent);
try
Result := TMemoryStream.Create;
Result.WriteComponentRes(FormIdent, DlgForm);
Result.Position := 0;
finally
DlgForm.Free;
end;
end;
function TIsamMainForm.CreateBrowserSource(const UnitIdent, FormIdent,
EdiUnitIdent, EdiFormIdent: string): TMemoryStream;
begin
CreateBrowserSource:= Erzeuge_BrowserSource(UnitIdent, FormIdent,
EdiUnitIdent, EdiFormIdent,
BrwHauptCheck.Checked,
RecList,KeyList,IIDList,
DbaseExpCheck.Checked,
DBaseImpCheck.Checked,
DBStruEdit.Text,Sprache);
end;
function TIsamMainForm.CreateStru(Const FormIdent: String): TMemoryStream;
begin
CreateStru:= Erzeuge_Struktur(FormIdent,RecList,KeyList);
end;
procedure TIsamMainForm.EdiCheckClick(Sender: TObject);
begin
CheckButtons;
end;
procedure TIsamMainForm.CancelBttnClick(Sender: TObject);
begin
ModalResult:= mrCancel;
end;
procedure TIsamMainForm.RueckbttnClick(Sender: TObject);
var i: Integer;
begin
i:= Notebook1.PageIndex;
Case I of
5: i:= 4;
4: i:= 3;
3: i:= 2;
2: begin
Update_Listen(2);
I:= 1;
end;
1: begin
Update_Listen(1);
i:= 0;
end;
else i:= 0;
end;
Notebook1.PageIndex:= i;
CheckButtons;
end;
Procedure TIsamMainForm.Update_Listen(i: Integer);
var L,x,IdxAnzahl,Code: Integer;
ListText,LText,IStr,LStr,KStr: String;
begin
Case i of
0: begin
RecList.Clear;
if Memo1.Lines.Count > 0 then begin
For x:= 0 to Memo1.Lines.Count-1 do RecList.Add(Memo1.Lines[x]);
end;
Memo2.Lines.Clear;
IIDList.Clear;
if KeyList.Count > 0 then begin
IdxAnzahl:= 0;
For x:= 0 to KeyList.Count-1 do begin
ListText:= KeyList[x];
LText:= Uppercase(ListText);
Strip(LText);
Memo2.Lines.Add(Listtext);
if Pos('KEYNO=',LText) > 0 then begin
Inc(IdxAnzahl);
Str(IdxAnzahl,IStr);
L:= 0;
if Pos('KEYLEN',LText) > 0 then begin
LStr:= LText;
Delete(LStr,1,Pos('KEYLEN',LStr)+6);
if LStr[1] = '=' then Delete(LStr,1,1);
if Pos('}',LStr) > 0 then begin
LStr:= Copy(LStr,1,Pos('}',LStr)-1);
Val(LStr,L,Code);
end;
end;
Str(L,LStr);
if Pos('TRUE',LText) > 0 then IIDList.Add('IID['+IStr+'].KeyL:= '+LStr+'; IID['+IStr+'].AllowDupK:= TRUE;')
else IIDList.Add('IID['+IStr+'].KeyL:= '+LStr+'; IID['+IStr+'].AllowDupK:= FALSE;');
end;
end;
end
else Memo2.Lines.Add('F(Feldname,0);');
Memo3.Lines.Clear;
if IIDList.Count > 0 then begin
For x:= 0 to IIDList.Count-1 do Memo3.Lines.Add(IIDList[x]);
end
else Memo3.Lines.Add('IID[1].KeyL:= 0; IID[1].AllowDupK:= FALSE;');
end;
1: begin
KeyList.Clear;
if Memo2.Lines.Count > 0 then begin
For x:= 0 to Memo2.Lines.Count-1 do begin
KStr:= Memo2.Lines[x];
if (Pos('S:=',KStr) = 0)
and (Pos('KEY BEGIN',KStr) = 0)
and (Pos('KEY END',KStr) = 0) then KStr:= 'S:='+KStr;
KeyList.Add(KStr);
end;
end;
IIDList.Clear;
if Memo3.Lines.Count > 0 then begin
For x:= 0 to Memo3.Lines.Count-1 do IIDList.Add(Memo3.Lines[x]);
end;
end;
end;
end;
procedure TIsamMainForm.VorBttnClick(Sender: TObject);
var i: Integer;
begin
i:= Notebook1.PageIndex;
Case i of
0: begin
Update_Listen(0);
I:= 1;
end;
1: begin
Update_Listen(1);
i:= 2;
end;
2: i:= 3;
3: i:= 4;
4: ModalResult:= mrOk;
end;
Notebook1.PageIndex:= i;
CheckButtons;
end;
procedure TIsamMainForm.EdiHauptCheckClick(Sender: TObject);
begin
if EdiHauptCheck.Checked then BrwHauptCheck.Checked:= False;
end;
procedure TIsamMainForm.BrwHauptCheckClick(Sender: TObject);
begin
if BrwHauptCheck.Checked then EdiHauptCheck.Checked:= False;
end;
procedure TIsamMainForm.SpeedButton1Click(Sender: TObject);
var Txt: String;
begin
if SaveDialog1.Execute then begin
Txt:= SaveDialog1.FileName;
While Pos('\',Txt) > 0 do Delete(Txt,1,Pos('\',Txt));
if Pos('.',Txt) > 0 then Txt:= Copy(Txt,1,Pos('.',Txt)-1);
Edit1.Text:= Txt;
if EditorFormNameInput.Text = '' then begin
EditorFormNameInput.Text:= Txt + 'Dialog';
end;
end;
CheckButtons;
end;
procedure TIsamMainForm.SpeedButton3Click(Sender: TObject);
var Txt: String;
begin
if SaveDialog1.Execute then begin
Txt:= SaveDialog1.FileName;
While Pos('\',Txt) > 0 do Delete(Txt,1,Pos('\',Txt));
if Pos('.',Txt) > 0 then Txt:= Copy(Txt,1,Pos('.',Txt)-1);
Edit3.Text:= Txt;
if BrwFormNameInput.Text = '' then begin
BrwFormNameInput.Text:= Txt + 'Dialog';
end;
end;
CheckButtons;
end;
procedure TIsamMainForm.SpeedButton4Click(Sender: TObject);
begin
DirAuswahlDlg:= TDirAuswahlDlg.Create(Self);
Try
if Sprache = 1 then DirAuswahlDlg.Caption:= 'Select path';
if DirAuswahlDlg.ShowModal = mrOk then
DirInput.Text:= DirAuswahlDlg.DirectoryListbox1.Directory+'\';
Finally
DirauswahlDlg.Free;
end;
CheckButtons;
end;
procedure TIsamMainForm.SpeedButton5Click(Sender: TObject);
begin
if FontDialog1.Execute then EdiFontLabel.Font:= FontDialog1.Font;
end;
procedure TIsamMainForm.SpeedButton6Click(Sender: TObject);
begin
if FontDialog1.Execute then EdiInputFontLabel.Font:= FontDialog1.Font;
end;
procedure TIsamMainForm.SpeedButton7Click(Sender: TObject);
begin
if FontDialog1.Execute then LboxFontLabel.Font:= FontDialog1.Font;
end;
procedure TIsamMainForm.Memo1Exit(Sender: TObject);
begin
CheckButtons;
end;
procedure TIsamMainForm.HelpBttnClick(Sender: TObject);
begin
if Sprache = 1 then Application.HelpFile:= 'EXPTISAE.HLP'
else Application.HelpFile := 'EXPTISAM.HLP';
Application.HelpCommand(HELP_CONTENTS, 0);
end;
procedure TIsamMainForm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = vk_F1 then HelpBttnClick(Sender);
end;
Procedure TIsamMainForm.Setze_Sprache(S: Integer);
begin
Case Sprache of
1: begin
CancelBttn.Caption:= '&Cancel';
CancelBttn.Hint:= 'Cancel';
Rueckbttn.Caption:= '&Back';
RueckBttn.Hint:= 'Back';
VorBttn.Caption:= '&Forward';
VorBttn.Hint:= 'Forward';
GroupBox2.Caption:= 'Editor Options';
EdiHauptCheck.Caption:= 'Editor as main window';
GroupBox4.Caption:= 'Browser Options';
BrwHauptCheck.Caption:= 'Browser as main window';
FileopenBttn.Hint:= 'Load file *.TYP';
GroupBox5.Caption:= 'Path and Filenames';
Label7.Caption:= 'Filename (without EXT)';
Label3.Caption:= 'create';
SpeedButton1.Hint:= 'Select Editor-FileName';
SpeedButton3.Hint:= 'Select Browser-FileName';
Label9.Caption:= 'Path-Name';
SpeedButton4.Hint:= 'Select path';
Label10.Caption:= 'INI-Filename';
Label11.Caption:= 'INI-Browsername';
GroupBox6.Caption:= 'Labels and Inputlines';
LabelNebenRadio.Caption:= 'side by side';
LabelueberRadio.Caption:= 'beneath';
GroupBox7.Caption:= 'Input-length';
LenFestRadio.Caption:= 'fixed';
LenVarRadio.Caption:= 'variable';
SpeedButton5.Hint:= 'Select Label-Font';
SpeedButton6.Hint:= 'Select Input-Font';
SpeedButton7.Hint:= 'Select Browser-Font';
Label2.Caption:= 'Table';
HelpBttn.Caption:= '&Help';
HelpBttn.Hint:= 'Help';
SprachBttn.Caption:= '&German';
SprachBttn.Hint:= 'Deutsche Sprache auswΣhlen';
DateiBttn.Hint:= 'Select ISAM-table';
DbStruBttn.Hint:= 'filename of the DBASE-structure file';
end;
else begin
CancelBttn.Caption:= 'Abbruch';
CancelBttn.Hint:= 'Abbruch';
Rueckbttn.Caption:= '&Zurⁿck';
RueckBttn.Hint:= 'Zurⁿck';
VorBttn.Caption:= '&Weiter';
VorBttn.Hint:= 'Weiter';
GroupBox2.Caption:= 'Editor Einstellungen';
EdiHauptCheck.Caption:= 'Editor als Hauptfenster';
GroupBox4.Caption:= 'Browser Einstellungen';
BrwHauptCheck.Caption:= 'Browser als Hauptfenster';
FileopenBttn.Hint:= 'TYP-Datei laden';
GroupBox5.Caption:= 'Pfad and Dateinamen';
Label7.Caption:= 'Dateiname (ohne EXT)';
Label3.Caption:= 'erzeugen';
SpeedButton1.Hint:= 'Editor-Sourcefilenamen auswΣhlen';
SpeedButton3.Hint:= 'Browser-Sourcefilenamen auswΣhlen';
Label9.Caption:= 'Ziel-Verzeichnis';
SpeedButton4.Hint:= 'Pfad auswΣhlen';
Label10.Caption:= 'INI-Dateiname';
Label11.Caption:= 'INI-Browsername';
GroupBox6.Caption:= 'Labels und Inputlines';
LabelNebenRadio.Caption:= 'nebeneinander';
LabelueberRadio.Caption:= 'untereinander';
GroupBox7.Caption:= 'Input-LΣnge';
LenFestRadio.Caption:= 'fest';
LenVarRadio.Caption:= 'variabel';
SpeedButton5.Hint:= 'Label-Font auswΣhlen';
SpeedButton6.Hint:= 'Input-Font auswΣhlen';
SpeedButton7.Hint:= 'Browser-Font auswΣhlen';
Label2.Caption:= 'Tabelle';
HelpBttn.Caption:= '&Hilfe';
HelpBttn.Hint:= 'Help';
SprachBttn.Caption:= '&English';
SprachBttn.Hint:= 'Select english language';
DateiBttn.Hint:= 'Isam-Tabelle auswΣhlen';
DbStruBttn.Hint:= 'Filename der DBASE-Struktur-Datei';
end;
end;
end;
procedure TIsamMainForm.FormShow(Sender: TObject);
begin
if Sprache <> 0 then Setze_Sprache(Sprache);
end;
procedure TIsamMainForm.SprachBttnClick(Sender: TObject);
begin
if Sprache = 0 then Sprache:= 1 else Sprache:= 0;
Setze_Sprache(Sprache);
end;
procedure TIsamMainForm.DateiBttnClick(Sender: TObject);
begin
if OpenDialog2.Execute then begin
TableNameInput.Text:= OpenDialog2.FileName;
end;
CheckButtons;
end;
procedure TIsamMainForm.Edit1Exit(Sender: TObject);
begin
if EditorFormNameInput.Text = '' then begin
EditorFormNameInput.Text:= Edit1.Text + 'Dialog';
end;
CheckButtons;
end;
procedure TIsamMainForm.Edit3Exit(Sender: TObject);
begin
if BrwFormNameInput.Text = '' then begin
BrwFormNameInput.Text:= Edit3.Text + 'Dialog';
end;
CheckButtons;
end;
procedure TIsamMainForm.EditorFormNameInputExit(Sender: TObject);
begin
CheckButtons;
end;
procedure TIsamMainForm.BrwFormNameInputExit(Sender: TObject);
begin
CheckButtons;
end;
procedure TIsamMainForm.TableNameInputExit(Sender: TObject);
begin
CheckButtons;
end;
procedure TIsamMainForm.DirInputExit(Sender: TObject);
begin
CheckButtons;
end;
procedure TIsamMainForm.DBaseExpCheckClick(Sender: TObject);
begin
CheckButtons;
end;
procedure TIsamMainForm.DBaseImpCheckClick(Sender: TObject);
begin
CheckButtons;
end;
procedure TIsamMainForm.DBStruEditExit(Sender: TObject);
begin
CheckButtons;
end;
procedure TIsamMainForm.DBStruBttnClick(Sender: TObject);
var Txt: String;
begin
if SaveDialog1.Execute then begin
Txt:= SaveDialog1.FileName;
While Pos('\',Txt) > 0 do Delete(Txt,1,Pos('\',Txt));
if Pos('.',Txt) > 0 then Txt:= Copy(Txt,1,Pos('.',Txt)-1);
DBStruEdit.Text:= Txt;
end;
CheckButtons;
end;
procedure TIsamMainForm.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then begin
Key := #0;
Perform(WM_NEXTDLGCTL, 0, 0);
end;
end;
end.